// let 不允许在相同作用域内重复声明同一个变量
function f() {
  let a = 10
  // var a = 1 // 报错
}
function f3 () {
  var a = 10
  // let a = 1 //报错
}
function f2() {
  let a = 10
  // let a = 1 // 报错
}
// 因为let不允许在相同作用域内重复声明同一个变量，所以函数内重新声明参数也是不可取的
function f4 (arg) {
  // let arg = 3 // 报错
}
function f5(arg) {
  {
    let arg = 3 //不报错，因为又是一个新的作用域了
  }
}
